The latest source is available on GitHub


Download the latest users guide


Download the CarsonDB NuGet package


About


CheetahBase.com is the home of Fast database tools. All tools are a combination of Open Source and free software.

CheetahBase's Premier Product is CarsonDB.

CarsonDB is a high-performance library for querying data in the AVImark veterinarian practice management software. AVImark is the industry leader in veterinarian practice management software. CarsonDB is simply the fastest solution for software needing access to AVImark data. CarsonDB contains Open Source and freeware components. The main interface library is written using the Microsoft .NET Framework. The data mining library is written using x86 Assembly language. All tools are currently compatible with the Microsoft Windows family of operating systems.

How fast is CarsonDB? CarsonDB can peform a single-pass query of a 1 gigabyte file in about 12 seconds. Multliple queries takes fractional amounts of time since the results are filtered.


Why is this called CarsonDB?

Carson was a street cat born in Ukraine. He was in bad shape as a little kitten because he was attacked by an older cat. Carson was nursed back to health. Carson moved to the United States where he lived with me for almost 7 years. He eventually developed a brain tumor. He had surgery, but, unfortunately, it was too late for him.

CarsonDB was developed in the memory of Carson with the hope that software can be developed to help the pets we love.

Carson helping Grant write code!!

Carson doing his best to help write software.



Features


Open Source

The C# code is Open Source and available for download to use in any commerical, personal or scholastic project. The source is licensed under the MIT software license.


Fast Record Filtering

Crawling through flat files can take a lot of time. Using a high level language such as C# by itself simply cannot perform at adequate speeds. With the help of assembly language, files of even a gigabyte or more will take seconds to query instead of minutes.


Fast Difference Engine

Some applications will need to discover new and updated records. This is important when synchronizing an external database. CarsonDB can find records that have changed in a table in seconds. It doesn't matter even if the file is over a gigabyte in size.


Reliable and Stable

Even though CarsonDB is in its early release, all tables and functions have automated unit tests associated with them. These tests are executed and must be completed successfully before any releases are made publicly. Stable, accurate and bug free software are of prime importance when developing CarsonDB. All tests are included in the source code.




Frequently Asked Questions


How do I use CarsonDB in my software application?

It is easy. First, you must agree to conform to the licensing model. The C# libraries are released as Open Source software under the MIT license. For more information on this license, please click here. The Assembly language libraries are freeware, but are subject to the freeware license agreement. Please click here for more information on this license. Download the NuGet package here and you'll be ready to get stated.

Commercial licenses will be offered on an exception basis. There is no pricing available for a commerical license at this time.


Why is the Assembly language source code not Open Source?

GST Computing, LLC does not wish to expose AVImark's proprietary database format. Releasing the Assembly source would do that and potentially give others the ability to corrupt data by writing back to these databases. This library is purposely read only. For that reason, the source code will not be released.


Why is the project only available in 32-bit?

x86 and x64 Assembly language is different. Porting from one to another is not as easy as selecting x64 and recompiling. The Windows libraries work differently and the CPU registers are 64-bits wide. We do plan on porting to x64 if there is sufficient demand. Since we need to be able to run on both 32-bit and 64-bit platforms, we chose to initially release to the x86 version. Unfortuately, that will cause you to compile your projects as x86. Since the Assembly library is memory efficient, the 2 GB memory barrier should never be a problem.


Do you plan on porting to Linux or macOS (OS X)?

We have no plans to port at this time. Part of the driving force behind this is that AVImark runs natively only on Windows environments. A Linux or macOS enivornment can be used as a file server in this type of setup, so porting will be considered in the future if there is sufficient demand.


Are there plans to support Java or another other development environment?

Not at this time. Again, as stated with many of the other questions, if there is sufficient demand, it will be considered.







UP